package com.yzh.map;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

/**
 * @author 于振晗
 * @title: TestMap
 * @description: TODO map
 * @date 2020年09月03日
 * @path com.yzh.map
 */

/**
 *
 * HashMap 哈希表
 *    key：无序  唯一  HashSet
 *    value：无序 不唯一  Collection
 */
public class TestMap {
    public static void main(String[] args) {
        Map<String,String> mp = new HashMap<String,String>();
        //存储国家
        mp.put("ch","中国");
        mp.put("en","美国");
        mp.put("en","测试重复");
        mp.put("jp","日本");

        //获取长度
        System.out.println(mp.size());
        //获取所有的key-value
        System.out.println(mp);
        //获取所有的key
        System.out.println(mp.keySet());
        //获取所有的value
        System.out.println(mp.values());
        //通过key获取value
        System.out.println(mp.get("ch"));

        /**
         * 遍历map
         */
        //使用增强for循环
        for (String key : mp.keySet()) {
            System.out.println(key+"----"+mp.get(key));
        }


        //Entry 红黑树或者哈希表中的节点类
        Set<Map.Entry<String, String>> entries = mp.entrySet();
        Iterator<Map.Entry<String, String>> iterator = entries.iterator();
        while (iterator.hasNext()) {
            System.out.println(iterator.next());
        }

    }
}
